Abstraktion von GUI-Komponenten für plattformübergreifende funktionale Tests
نویسندگان
چکیده
Ein aktueller Trend in der Softwareindustrie ist das Angebot von verschiedenen Client-Anwendungen für heterogene Plattformen. Aber aufgrund der Vielzahl von GUI-Toolkits ist es aufwändig, für jede Version GUI-Tests durchzuführen. Diese Arbeit stellt ein Abstraktionskonzept vor, mit welchem toolkitund plattformunabhängige Testskripte für den funktionalen Blackbox-Test im Rahmen von Capture/Replay-Systeme mit Low-Level-Events möglich sind. Auf Basis von ”User Interface Markup Language“ und ”User Interface Automation“ wird eine Abstraktion von Widgets, Ereignissen und Datentypen konzipiert, die durch die Kombination von Steuermustern die freie Typisierung von Widgets unterstützt. Theoretisch sind beliebige GUI-Strukturen und zusammengesetzte Widgets abbildbar. Die Interaktionsmöglichkeiten der Widgets wurden mit LowLevel-Mausund Tastaturevents abgebildet. Über einen Abstract Event Listener werden die Benutzerinteraktionen in das Abstraktionskonzept übertragen und als unabhängiges Testskript aufgezeichnet. Die Praxistauglichkeit wird mithilfe eines Prototypen für die Aufnahme und Wiedergabe von Nutzeraktionen in browserbasierten Webund Java-Swing-Client-Anwendungen unter Beweis gestellt. Der Prototyp unterstützt exemplarisch eine Untermenge von Widgets des Swing-Toolkits und von Web-Formularelementen (HTML). Problematisch sind Adressierung von Unterwidgets durch uneinheitliche Umsetzung innerer Strukturen von Widgets in den Toolkits, starke Laufzeitabhängigkeit der Steuermuster sowie die starke Systemnähe von Low-Level-Events. Dennoch wurde die grundsätzliche Machbarkeit des Ansatzes für szenario-getriebenes funktionales Testen plattformübergreifender Software demonstriert.
منابع مشابه
Architektur und Komponenten für ein heterogenes Team kooperierender, autonomer humanoider Roboter
Zusammenfassung. Für ein kooperierendes Team autonomer, humanoider Roboter, das derzeit aus insgesamt vier unterschiedlichen, ca. 37 68 cm großen Robotertypen besteht, werden eine plattformübergreifende, modulare Softwarearchitektur sowie plattformübergreifende und individuelle Module zur Sensordatenverarbeitung, Planung und Bewegungssteuerung entwickelt. Das entwickelte funktionale Framework e...
متن کاملReengineering von Software-Komponenten zur Vorhersage von Dienstgüte-Eigenschaften
Die Verwendung von Komponenten ist ein anerkanntes Prinzip in der Software-Entwicklung. Dabei werden Software-Komponenten zumeist als Black-Boxes aufgefasst [1], deren Interna vor einem KomponentenVerwender verborgen sind. Zahlreiche ArchitekturAnalyse-Verfahren, insbesondere solche zur Vorhersage von nicht-funktionalen Eigenschaften, benötigen jedoch Informationen über Interna (bspw. die Anzah...
متن کاملPlattformübergreifende Publikation rekombinierbarer Lernobjekte auf Basis von XML
Es wird ein Vorgehensmodell zur Gestaltung von Lerninhalten für verschiedene Ausgabemedien und -formate (z.B. HTML, PDF, PDA) auf Basis von XML beschrieben. Lernobjekte werden in Inhaltshierarchien abgelegt, um differenzierte didaktisch motivierte Zugangsformen zum Lernstoff zu ermöglichen. Komponenten des Gesamtsystems sind verschiedene Autorenwerkzeuge sowie im Kern ein Publikationsframework ...
متن کاملReverse Engineering von Software-Komponentenverhalten mittels Genetischer Programmierung
Die Verwendung von Komponenten ist ein anerkanntes Prinzip in der Software-Entwicklung. Dabei werden Software-Komponenten zumeist als Black-Boxes aufgefasst [1], deren Interna vor einem Komponenten-Verwender verborgen sind. Architektur-AnalyseVerfahren zur Vorhersage nicht-funktionaler Eigenschaften erlauben bspw. auf der Architekturebene Dimensionierungsfragestellungen für Hardware/ Software-U...
متن کاملFunktionale Verifikation eingebetteter Systeme: Techniken und Werkzeuge auf Systemebene
Aufgrund der rasch zunehmenden Komplexität eingebetteter Systeme ergab sich die Notwendigkeit, die Abstraktionsebene im Systementwurf anzuheben. Es wurde die elektronische Systemebene geschaffen, auf der die Systembeschreibungssprache SystemC und die Konzepte zur Modellierung auf Transaktionsebene (engl. Transaction Level Modeling, TLM) große Bedeutung erlangten. TLM-Modelle, die in SystemC ges...
متن کامل